home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 2 / Gold Medal Software Volume 2 (Gold Medal) (1994).iso / windows / win31 / macsyma.arj / MACSDEMO.EXE / TRIG_ANG.OUT < prev    next >
Text File  |  1993-09-14  |  11KB  |  160 lines

  1.  
  2. (c1) oldflags:makelist(funmake(":",[flag,eval(flag)]),flag,
  3.  '[trigsign,triginverses,%piargs,%iargs,halfangles,showtime]);
  4. |$label(0,15,Times New Roman,$(d1$))$open([)trigsign$hinge()$in( : )true$ina($, )$hinge()triginverses$hinge()$in( : )all$ina($, )$hinge()%piargs$hinge()$in( : )true$ina($, )$hinge()%iargs$hinge()$in( : )true$ina($, )$hinge()halfangles$hinge()$in( : )false$ina($, )$hinge()showtime$hinge()$in( : )false$close(])
  5.  
  6. (c2) /* Impose the defaults: */
  7. (trigsign:%piargs:%iargs:showtime:true,triginverses:all,halfangles:false,
  8.  supcontext(%trig_angles_demo_context))$
  9. Time= 0 msecs
  10.  
  11. (c3) [tan(3*%pi/10),sin(3*%pi/10)/cos(3*%pi/10),sin(3*%pi/5)/(1+cos(3*%pi/5))];
  12. Time= 549 msecs
  13. |$label(0,15,Times New Roman,$(d3$))$open([)$q($paren($sqrt(5)$in( + )5,$(,$))$in( )cos$paren($q($greektext(p),10)),5)$ina($, )$hinge()$q($sqrt(5)$in( + )1,4$in( )sin$paren($q($greektext(p),5)))$ina($, )$hinge()$q(cos$paren($q($greektext(p),10)),1$in( - )$q($sqrt(5)$in( - )1,4))$close(])
  14.  
  15. (c4) /* %PIARGS:TRUE will do everything but nest radicals. */
  16. map('atan,%);
  17. Time= 1699 msecs
  18. |$label(0,15,Times New Roman,$(d4$))$open([)$q(3$in( )$greektext(p),10)$ina($, )$hinge()$q(3$in( )$greektext(p),10)$ina($, )$hinge()$q(3$in( )$greektext(p),10)$close(])
  19.  
  20. (c5) map('acot,%th(2));
  21. Time= 709 msecs
  22. |$label(0,15,Times New Roman,$(d5$))$open([)$q($greektext(p),5)$ina($, )$hinge()$q($greektext(p),5)$ina($, )$hinge()$q($greektext(p),5)$close(])
  23.  
  24. (c6) /* To get totally rad, */
  25. block([%piargs:all],resimplify(%th(3)));
  26. Time= 169 msecs
  27. |$label(0,15,Times New Roman,$(d6$))$open([)$q($sup($paren($sqrt(5)$in( + )5,$(,$)),3$in(/)2),10$in( )$sqrt(2))$ina($, )$hinge()$q($sqrt(2)$in( )$paren($sqrt(5)$in( + )1,$(,$)),$paren($sqrt(5)$in( - )1,$(,$))$in( )$sqrt($sqrt(5)$in( + )5))$ina($, )$hinge()$q($sqrt($sqrt(5)$in( + )5),2$in( )$sqrt(2)$in( )$paren(1$in( - )$q($sqrt(5)$in( - )1,4),$(,$)))$close(])
  28.  
  29. (c7) map('atan,%);
  30. Time= 1480 msecs
  31. |$label(0,15,Times New Roman,$(d7$))$open([)$q(3$in( )$greektext(p),10)$ina($, )$hinge()$q(3$in( )$greektext(p),10)$ina($, )$hinge()$q(3$in( )$greektext(p),10)$close(])
  32.  
  33. (c8) map('acot,%th(2));
  34. Time= 1210 msecs
  35. |$label(0,15,Times New Roman,$(d8$))$open([)$q($greektext(p),5)$ina($, )$hinge()$q($greektext(p),5)$ina($, )$hinge()$q($greektext(p),5)$close(])
  36.  
  37. (c9) declare(%int,integer,%odd,odd);
  38. Time= 439 msecs
  39. |$label(0,15,Times New Roman,$(d9$))done
  40.  
  41. (c10) block([%piargs:false],makelist(sin(x+(-1)^%int*%odd^2*%pi/2^k),k,0,3));
  42. Time= 109 msecs
  43. |$label(0,15,Times New Roman,$(d10$))$open([)sin$paren(x$in( + )$greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int)$in( )$sup(%odd,2))$ina($, )$hinge()sin$paren(x$in( + )$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int)$in( )$sup(%odd,2),2))$ina($, )$hinge()sin$paren(x$in( + )$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int)$in( )$sup(%odd,2),4))$ina($, )$hinge()sin$paren(x$in( + )$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int)$in( )$sup(%odd,2),8))$close(])
  44.  
  45. (c11) map("=",%,resimplify(%));
  46. Time= 1489 msecs
  47. |$label(0,15,Times New Roman,$(d11$))$open([)sin$paren(x$in( + )$greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int)$in( )$sup(%odd,2))$hinge()$in( = )$in( - )sin$paren(x)$ina($, )$hinge()sin$paren(x$in( + )$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int)$in( )$sup(%odd,2),2))$hinge()$in( = )$sup($paren($in( - )1,$(,$)),%int)$hinge()$in( )cos$paren(x)$ina($, )$hinge()sin$paren(x$in( + )$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int)$in( )$sup(%odd,2),4))$hinge()$in( = )sin$paren(x$in( + )$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int),4))$ina($, )$hinge()sin$paren(x$in( + )$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int)$in( )$sup(%odd,2),8))$hinge()$in( = )$sup($paren($in( - )1,$(,$)),$q($sup(%odd,2)$in( - )1,8))$hinge()$in( )sin$paren(x$in( + )$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int),8))$close(])
  48.  
  49. (c12) map('asin,map('rhs,%));
  50. Time= 219 msecs
  51. |$label(0,15,Times New Roman,$(d12$))$open([)$in( - )x$ina($, )$hinge()$sup($paren($in( - )1,$(,$)),%int)$hinge()$in( )$open($()$q($greektext(p),2)$hinge()$in( - )x$close($))$ina($, )$hinge()x$hinge()$in( + )$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int),4)$ina($, )$hinge()$sup($paren($in( - )1,$(,$)),$q($sup(%odd,2)$in( - )1,8))$hinge()$in( )$open($()x$hinge()$in( + )$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int),8)$close($))$close(])
  52.  
  53. (c13) atan2(2-2*sqrt(3)-4*sqrt(2),-2*sqrt(3)-2);
  54. Time= 380 msecs
  55. |$label(0,15,Times New Roman,$(d13$))$in( - )$q(17$in( )$greektext(p),24)
  56.  
  57. (c14) tan(%);
  58. Time= 0 msecs
  59. |$label(0,15,Times New Roman,$(d14$))$open($()$sqrt(2)$hinge()$in( - )1$close($))$hinge()$in( )$open($()$sqrt(3)$hinge()$in( + )$sqrt(2)$close($))
  60.  
  61. (c15) /* Look SQRT(twice). */
  62. ATAN((-1)^%int);
  63. Time= 59 msecs
  64. |$label(0,15,Times New Roman,$(d15$))$q($greektext(p)$in( )$sup($paren($in( - )1,$(,$)),%int),4)
  65.  
  66. (c16) tan(%);
  67. Time= 49 msecs
  68. |$label(0,15,Times New Roman,$(d16$))$sup($open($()$in( - )1$close($)),%int)
  69.  
  70. (c17) TAN((-1)^%int*%pi/4+5*%pi/24);
  71. Time= 109 msecs
  72. |$label(0,15,Times New Roman,$(d17$))$paren($sqrt(6)$in( + )$sqrt(2),$(,$))$in( )$sup($paren($in( - )1,$(,$)),%int)$hinge()$in( + )$sqrt(3)$hinge()$in( + )2
  73.  
  74. (c18) atan(1/%);
  75. Time= 109 msecs
  76. |$label(0,15,Times New Roman,$(d18$))$q($q($greektext(p),12)$in( - )$q($greektext(p)$in( )$paren(1$in( - )$sup($paren($in( - )1,$(,$)),%int),$(,$)),2),2)
  77.  
  78. (c19) tan(%);
  79. Time= 269 msecs
  80. |$label(0,15,Times New Roman,$(d19$))$paren($sqrt(6)$in( + )$sqrt(2),$(,$))$in( )$sup($paren($in( - )1,$(,$)),%int)$hinge()$in( - )$sqrt(3)$hinge()$in( - )2
  81.  
  82. (c20) /* And if you're sufficiently crazy, */
  83. (sin(%pi/510*if linel<99 then 75 else 104),
  84.  block([%piargs:all,radexpand:false],%%=resimplify(%%)));
  85. Time= 159 msecs
  86. |$label(0,15,Times New Roman,$(d20$))sin$paren($q(5$in( )$greektext(p),34))$hinge()$in( = )$q(2$in( )$sqrt($q($sup($paren($sqrt($q($sqrt(17)$in( )$paren($sqrt(17)$in( + )1,$(,$)),2))$in( + )$q($sqrt(17)$in( + )1,2),$(,$)),2),2$in( )$paren($sqrt($q($paren($sqrt(17)$in( - )1,$(,$))$in( )$sqrt(17),2))$in( + )$q($sqrt(17)$in( - )1,2),$(,$)))$in( + )$q(1,4))$in( + )1,2$in( )$paren($sqrt($q($sqrt(17)$in( )$paren($sqrt(17)$in( + )1,$(,$)),2))$in( + )$q($sqrt(17)$in( + )1,2),$(,$)))
  87.  
  88. (c21) dfloat(%);
  89. Time= 49 msecs
  90. |$label(0,15,Times New Roman,$(d21$))0.44573835577654d0$hinge()$in( = )0.44573835577654d0
  91.  
  92. (c22) /* SIGNUM is also a bit smarter. */
  93. SIGNUM((T^3+%pi*T)/(-2)^%int);
  94. Time= 1149 msecs
  95. |$label(0,15,Times New Roman,$(d22$))$sup($paren($in( - )1,$(,$)),%int)$hinge()$in( )signum$paren(t)
  96.  
  97. (c23) SIGNUM(SIGNUM(ASINH(T/(1+T^2))));
  98. Time= 159 msecs
  99. |$label(0,15,Times New Roman,$(d23$))signum$paren(t)
  100.  
  101. (c24) /* Upcoming PLOT assumes you will answer NEG here. */
  102. (block([triginverses:false],atan2(1-sqrt(2)*sin(a),1+sqrt(2)*cos(a))),
  103.       %%=expand(resimplify(%%)));
  104. |$label(-1,15,Times New Roman,)Is  $in() $in()$paren(4$in( )a$in( + )$greektext(p),|,|)$in( - )4$in( )$greektext(p)$in() $in()  positive$, negative$, or zero?
  105. N;
  106.  
  107. Time= 11699 msecs
  108. |$label(0,15,Times New Roman,$(d24$))atan2$paren(1$in( - )$sqrt(2)$in( )sin$paren(a)$ina($, )$hinge()$sqrt(2)$in( )cos$paren(a)$in( + )1)$hinge()$in( = )$q($greektext(p),8)$hinge()$in( - )$q(a,2)
  109.  
  110. (c25) if true=read("Can you PLOT in this context?  (TRUE; or FALSE;)") then
  111.  plot(lhs(%)-rhs(%),a,10^-6-5*%pi/4,3*%pi/4-10^-6) else
  112.  block([%piargs:false,triginverses:false],
  113.        makelist(dfloat(subst(n*%pi/8,a,%)),n,-9,5));
  114. |$label(-1,15,Times New Roman,)Can you PLOT in this context?  $(TRUE; or FALSE;$)
  115. F;
  116.  
  117. Time= 36189 msecs
  118. |$label(0,15,Times New Roman,$(d25$))$open([)2.15984494934298d0$hinge()$in( = )2.15984494934298d0$ina($, )$hinge()1.96349540849362d0$hinge()$in( = )1.96349540849362d0$ina($, )$hinge()1.76714586764426d0$hinge()$in( = )1.76714586764426d0$ina($, )$hinge()1.5707963267949d0$hinge()$in( = )1.5707963267949d0$ina($, )$hinge()1.37444678594552d0$hinge()$in( = )1.37444678594552d0$ina($, )$hinge()1.17809724509616d0$hinge()$in( = )1.17809724509616d0$ina($, )$hinge()0.9817477042468d0$hinge()$in( = )0.9817477042468d0$ina($, )$hinge()0.78539816339744d0$hinge()$in( = )0.78539816339744d0$ina($, )$hinge()0.58904862254808d0$hinge()$in( = )0.58904862254808d0$ina($, )$hinge()0.39269908169872d0$hinge()$in( = )0.39269908169872d0$ina($, )$hinge()0.19634954084936d0$hinge()$in( = )0.19634954084936d0$ina($, )$hinge()0.0d0$hinge()$in( = )0.0d0$ina($, )$hinge()$in( - )0.19634954084936d0$hinge()$in( = )$in( - )0.19634954084936d0$ina($, )$hinge()$in( - )0.39269908169872d0$hinge()$in( = )$in( - )0.39269908169872d0$ina($, )$hinge()$in( - )0.58904862254808d0$hinge()$in( = )$in( - )0.58904862254808d0$close(])
  119.  
  120. (c26) /* Difference was not NEG at endpoints!  (epsilons avoid ATAN(0,0).) */
  121. [tan(5*%pi/8),tan(5*%pi/16),tan(5*%pi/32)];
  122. Time= 380 msecs
  123. |$label(0,15,Times New Roman,$(d26$))$open([)$in( - )$sqrt(2)$hinge()$in( - )1$ina($, )$hinge()cot$paren($q(3$in( )$greektext(p),16))$ina($, )$hinge()tan$paren($q(5$in( )$greektext(p),32))$close(])
  124.  
  125. (c27) block([%piargs:all],resimplify(%));
  126. Time= 659 msecs
  127. |$label(0,15,Times New Roman,$(d27$))$open([)$in( - )$sqrt(2)$hinge()$in( - )1$ina($, )$hinge()$q($paren($sqrt(2$in( - )$sqrt(2))$in( + )2,$(,$))$in( )$paren(2$in( - )$sqrt(2),$(,$))$in( )$sqrt($sqrt(2)$in( + )2),2)$ina($, )$hinge()tan$paren($q(5$in( )$greektext(p),32))$close(])
  128.  
  129. (c28) /* Even %piargs:all will not nest radicals via iterative halfangles.
  130.    For that you need */
  131. block([halfangles:true],resimplify(%));
  132. Time= 1649 msecs
  133. |$label(0,15,Times New Roman,$(d28$))$open([)$in( - )$sqrt(2)$hinge()$in( - )1$ina($, )$hinge()$q($paren($sqrt(2$in( - )$sqrt(2))$in( + )2,$(,$))$in( )$paren(2$in( - )$sqrt(2),$(,$))$in( )$sqrt($sqrt(2)$in( + )2),2)$ina($, )$hinge()$q($paren(2$in( - )$sqrt(2$in( - )$sqrt(2$in( - )$sqrt(2))),$(,$))$in( )$sqrt($sqrt(2$in( - )$sqrt(2))$in( )$paren(2$in( )$sqrt(2)$in( - )4,$(,$))$in( - )4$in( )$sqrt(2)$in( + )8),2)$close(])
  134.  
  135. (c29) map('atan,%);
  136. Time= 2630 msecs
  137. |$label(0,15,Times New Roman,$(d29$))$open([)$in( - )$q(3$in( )$greektext(p),8)$ina($, )$hinge()$q(5$in( )$greektext(p),16)$ina($, )$hinge()$q(5$in( )$greektext(p),32)$close(])
  138.  
  139. (c30) /* That is why atan(tan(x)) -> x is on TRIGINVERSES:ALL.
  140.    It's only true for |x|<%pi/2. */
  141. asech(sec(x));
  142. Time= 59 msecs
  143. |$label(0,15,Times New Roman,$(d30$))$italictext(i)$hinge()$in( )x
  144.  
  145. (c31) tanh(x+%i*%pi/2);
  146. Time= 169 msecs
  147. |$label(0,15,Times New Roman,$(d31$))coth$paren(x)
  148.  
  149. (c32) asinh(%i^%odd/2);
  150. Time= 109 msecs
  151. |$label(0,15,Times New Roman,$(d32$))$q($italictext(i)$in( )$greektext(p)$in( )$sup($paren($in( - )1,$(,$)),$q(%odd$in( - )1,2)),6)
  152.  
  153. (c33) asinh(%i^%odd^2/2);
  154. Time= 49 msecs
  155. |$label(0,15,Times New Roman,$(d33$))$q($italictext(i)$in( )$greektext(p),6)
  156.  
  157. (c34) /* Clean up */
  158. (eval(oldflags),kill(%trig_angles_demo_context));
  159. |$label(0,15,Times New Roman,$(d34$))done
  160.